#ifndef ERROR_H
#define ERROR_H

#include <hw/console.h>

#define kerror(...) kprintf("FATAL ERROR %s:%d:", __FILE__, __LINE__); kprintf(__VA_ARGS__); for(;;)

#define assert(x) do { if(!(x)){ kprintf("ASSERT ERROR: %s:%d %s", __FILE__, __LINE__, #x); for(;;); } } while(0)

#ifdef DEBUG
#   define kdebug(...) kprintf("DEBUG:"); kprintf(__VA_ARGS__)
#else
#   define kdebug(...)
#endif
#endif
